import java.util.*;

/**
 * @Auther: zhaozs
 * @Date: 2021/4/21 22:57
 * @Description:查找兄弟单词
 * 输入:先输入单词的个数n，再输入n个单词。
 * 再输入一个单词，为待查找的单词x
 * 最后输入数字k
 *
 * 输出:输出查找到x的兄弟单词的个数m
 * 然后输出查找到的按照字典顺序排序后的第k个兄弟单词，没有符合第k个的话则不用输出
 */
public class Test2 {
    public static void main(String[] args) {
      //3 abc bca cab abc 1
        Scanner scanner=new Scanner(System.in);
        String s = scanner.nextLine();
        String[] split = s.split(" ");
        String word = split[split.length - 2];
        Integer index = Integer.valueOf(split[split.length - 1]);
        Integer value = Integer.valueOf(split[0]);
        List<String> list=new LinkedList<>();
        for (int i = 1; i <=value ; i++) {
            //两个不相等
            if (word.length()==split[i].length()&&!word.equals(split[i])){
                //判断是否是兄弟单词
                if (isBrother(word,split[i])){
                    list.add(split[i]);
                }
            }
        }
        if (!list.isEmpty()){
            System.out.println(list.size());
        }
        if (list.size()>=index){
            Collections.sort(list);
           System.out.println(list.get(index-1));
       }

    }
    public static boolean isBrother(String s1,String s2){
        char[] chars = s1.toCharArray();
        char[] chars1 = s2.toCharArray();
        Arrays.sort(chars);
        Arrays.sort(chars1);
        return Arrays.equals(chars,chars1);

    }

}
